1. Field of the Invention
The present invention relates to the field of computer implemented systems. More specifically, the present invention relates to techniques for managing revisionable data records and user dependent terminology within a computer implemented system.
2. Related Art
Modern computer implemented systems generally include functionalities by which data is stored, updated and accessed. In these computer implemented systems, data records are stored in a retrievable storage (e.g., a database residing in magnetic and/or optical media), and cross references or links among related data records are common. Typically, such cross references are stored in the retrievable media together with the associated data records. In the prior art, a user typically has to manually update all data records that reference a data record whenever the referenced data record is revised to ensure that any changes in the referenced data record are reflected accordingly in the referencing data record(s). Alternatively, the user has to specifically write a program or script to perform the same updating task. Numerous drawbacks exist for these prior art schemes. First, manual updating or additional programming as required in the prior art is error prone. For instance, if any referencing data record is not updated due to an omission or undetected programming error, the user is not alerted about the missing update and the integrity of the data is compromised. Furthermore, when an outdated referencing data record is itself referenced subsequently, it may even propagate the incorrect information with respect to the first referenced data record, thereby further degrading data integrity.
Furthermore, these prior art methods are time consuming and inefficient. For example, every time a change is made to a data record, the user must first determine whether any other data records are affected via cross referencing. If so, the user must then either manually perform the necessary updates to the affected data records or develop a dedicated program or script to perform the task. Such extensive manual steps involved in the actual updating of affected data records or developing a program to perform the same take up user time which can otherwise be devoted to more productive endeavors.
Yet another disadvantage of the prior art methods is that there exists an inevitable delay before a cross reference is actually updated. More specifically, when a data record is revised, those data records that reference it need to be updated accordingly. However, even if the user begins updating the referencing data records immediately after the referenced data record has been modified, there is still a possibility that the referencing record(s) are accessed prior to the corresponding update. Under such circumstances, an outdated reference results and data integrity is again compromised. As such, the overall reliability of the computer implemented system is adversely affected.
In addition, while modern computer implemented systems often support some user customizations, the level of support is usually limited and inflexible. For example, some prior art computer implemented systems provide an arbitrary selection of settings or configurations from which a user can choose to activate. However, the choices thus provided are generally limited and, more often than not, do not meet the distinct preferences and needs of a user. Often, the customizations are implemented using technical procedures that are not known to the end user, thereby requiring an expert to implement.
Other prior art off-the-shelf computer implemented systems allow users to override certain default configurations of the systems as shipped, but the users must programmatically develop the desired configurations to replace the default system configurations. Such additional development efforts not only incur extra costs to the user but also increase the time required to fully deploy the system.
Moreover, such program modules for user customizations are typically not supported by the system vendors because the modules are not considered standard components of the off-the-shelf systems. This translates into further additional costs and resources for supporting and maintaining the ongoing use of the customized systems.
Furthermore, a user with a customized system may not be able to take advantage of a later upgrade of the underlying off-the-shelf system released by the system vendor. This is because the customizing modules developed based on the older version of the off-the-shelf system may not be compatible with the newer version of the system. Under such circumstances, the user must either consume yet more resources to retrofit the customizing modules in order to upgrade to the new version of the underlying system and utilize any new features provided therein, or elect not to upgrade and thus be stuck with less desirable, antiquated technology.
Thus, there exists a need for a computer implemented system and method for data storage and retrieval wherein a referencing data record does not need to be manually updated when the corresponding referenced data record is revised. Further, there exists a need for a computer implemented system and method for data storage and retrieval wherein data integrity and system reliability are not compromised by outdated references arising from revisions of individual data records. In addition, there exists a need for a computer implemented system and method for data storage and retrieval which allows user customizations and does not restrict the customization to a few arbitrary choices. There also exists a need for a computer implemented system and method for data storage and retrieval that supports user customizations but does not impose costly development and maintenance expenditures upon the user and does not adversely affect the user's ability to migrate to improved versions of the system when they become available.